﻿using Bricks.Component.Utils;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;

namespace Bricks.Business.Models.ProjectContract
{
    [Description("标段清单")]
    public class ContractBillInfo : EntityBase<Guid>
    {
        public ContractBillInfo()
        {
            ID = GuidHelper.NewGuid();
        }

        [Required]
        [Display(Name = "标段ID")]
        public string ContractID { get; set; }  

        [Display(Name = "父ID")]
        public Guid? PID { get; set; }        

        [Required]
        [StringLength(255)]
        [Display(Name = "清单编号")]
        public string BillCode { get; set; }

        [StringLength(500)]
        [Display(Name = "清单名称")]
        public string BillName { get; set; }

        [Display(Name = "节点类型")]
        public int NodeType { get; set; }

        [StringLength(20)]
        [Display(Name = "清单类型")]
        public string BillType { get; set; }

        [StringLength(10)]
        public string Unit { get; set; }

        [Display(Name = "单价")]
        public double? Price { get; set; }

        [Display(Name = "数量")]
        public int? Count { get; set; }

        [Display(Name = "金额")]
        public double? Money { get; set; }

        public string Remark { get; set; }



        //下面是给合同管理添加的
        [Display(Name = "变更后单价")]
        public double? AlterPrice { get; set; }

        [Display(Name = "变更后数量")]
        public int? AlterCount { get; set; }

        [Display(Name = "变更后金额")]
        public double? AlterMoney { get; set; }

        [Display(Name = "已完成量")]
        public int? FinishCount { get; set; }

        [Display(Name = "已完成额")]
        public double? FinishMoney { get; set; }

        [Display(Name = "完成占比%")]
        public string FinishProportion { get; set; }
    }
}
